Estimación de proyectos de software con el método de puntos de casos de uso
1. ESCUELA POLITECNICA NACIONAL DESARROLLO DE SISTEMAS ESTIMACION BASADA EN PUNTOS DE CASOS DE USO DIANA PILA TECNOLOGIA EN ANALISIS DE SISTEMAS INFORMÁTICOS
2. TECNICAS DE ESTIMACION DE PROYECTOS DE SOFTWARE METODO DE LOS PUNTOS DE CASOS DE USO (UCP) Es un método propuesto originalmente por Gustav Karner, desarrollado mientras trabajaba en Objectory AB, bajo supervisión de Ivar Jacobson (creador de los casos de uso). Se trata de un método de estimación del tiempo de desarrollo de un proyecto mediante la asignación de "pesos" a un cierto número de factores que lo afectan, para finalmente, contabilizar el tiempo total estimado para el proyecto a partir de esos factores. La principal ventaja de este método es su adaptación en empresas o proyectos que utilizan la técnica de los casos de uso. El método de Casos de Uso permite documentar los requerimientos de un sistema en términos de Actores y Casos de Uso.
3. DEFINICIONES PRELIMINARES Un Actor representa a un usuario humano o a otro sistema que interactúa con el sistema bajo análisis. Un Caso de Uso relata una secuencia de acciones que uno o más actores llevan a cabo en el sistema para obtener un resultado de valor significativo. Análisis de Puntos de Función Esta técnica permite cuantificar el tamaño de un sistema independientemente del lenguaje, herramientas o metodologías utilizadas en la implementación.
4. METODO DE CASOS DE USO - PASOS A continuación, se detallan los pasos a seguir para la aplicación de éste método. Se deben revisar los aspectos clave de los requerimientos para calcular un recuento de Puntos Caso de Uso sin ajustar (UUCP - Unadjusted Use Case Points). Estudiar los factores técnicos y el entorno para crear los factores de ajuste. Ajustar los factores para llegar a obtener los Puntos Caso de Uso ajustados (UCP), que posteriormente se transformarán en una estimación de esfuerzo (horas-hombre).
5.
6. CÁLCULO DE LOS PUNTOS CASO DE USO SIN AJUSTAR (UUCP-UNADJUSTED USE CASE POINTS) Para realizar el cálculo de los Puntos Caso de Uso sin ajustar, se tienen que realizar los tres pasos definidos a continuación. Clasificar cada interacción entre actor y caso de uso según su complejidad y asignarle un peso. Calcular la complejidad de cada caso de uso según el número de transacciones o pasos del mismo. Sumar los valores obtenidos y calcular UUCP
7. Clasificar cada interacción entre actor y caso de uso según su complejidad y asignarle un peso. Para clasificar la complejidad de los actores se debe determinar la forma en la que cada actor interactúa con el sistema que se va a desarrollar.
8. Calcular UUCP Luego de realizar estos procedimientos, se calcula UUCP a partir de la siguiente ecuación: UUCP = UAW + UUCW Donde: UUCP: Puntos de Casos de Uso sin ajustar UAW: Factor de Peso de los Actores sin ajustar UUCW: Factor de Peso de los Casos de Uso sin ajustar
9. CALCULO DEL FACTOR DE COMPLEJIDAD TÉCNICA (TCF) Este coeficiente se calcula mediante la cuantificación de un conjunto de factores que determinan la complejidad técnica del sistema. Cada uno de los factores se cuantifica con un valor de 0 a 5, donde 0 significa un aporte irrelevante y 5 un aporte muy importante. El Factor de complejidad técnica se calcula mediante la siguiente ecuación: TCF = 0.6 + 0.01 x Σ (Pesoix Valor asignadoi)
10.
11. Calcular la complejidad de cada caso de uso según el número de transacciones o pasos del mismo. Para realizar el cálculo de la complejidad de un caso de uso se debe determinar el número de transacciones, incluyendo los caminos alternativos.
12. CALCULO DEL FACTOR DE AMBIENTE (EF) Este factor hace referencia a las habilidades y el entrenamiento del grupo involucrado en el desarrollo del proyecto de software. El Factor de ambiente se calcula mediante la siguiente ecuación: EF =1.4 - 0.03 x Σ (Pesoix Valor asignadoi)
13. CALCULO DE PUNTOS DE CASOS DE USO AJUSTADOS (UCP) Una vez que se tienen los Puntos de Casos de Uso sin ajustar, se debe ajustar éste valor mediante la siguiente ecuación: UCP = UUCP x TCF x EF Donde: UCP: Puntos de Casos de Uso ajustados UUCP: Puntos de Casos de Uso sin ajustar TCF: Factor de complejidad técnica EF: Factor de ambiente A través del cálculo de esta expresión obtenemos una estimación del tamaño y no del esfuerzo.
14. ESTIMACIÓN DEL ESFUERZO Como ocurre en otros métodos de estimación, una vez obtenido el tamaño, se puede obtener el esfuerzo. Para ello, se utiliza la siguiente expresión: Esfuerzo = UCP * Factor de Productividad Karner originalmente sugirió que cada Punto de Casos de Uso requiere 20 horas-hombre. Posteriormente, surgieron otros refinamientos que proponen seguir el procedimiento que se presenta a continuación: Contar los factores de ambiente EF entre R1 y R6 cuya influencia es inferior a 3 (influencia promedio) y los factores de entorno entre R7 y R8 que son superiores a 3. Entonces: 20 horas-hombre por UCP si el valor es ≤2 28 horas-hombre por UCP si el valor es ≤4 36 horas-hombre por UCP si el valor es ≥5, en este caso se debería replantear el proyecto.
15. EJEMPLO DE APLICACIÓN DEL METODO UCP Un cajero automático brinda diferentes servicios a sus clientes: Permite realizar consultas de Saldo en las Cuentas, Retiro de efectivo, cambio de contraseña, Transferencias a otras cuentas. Diagrama de Casos de Uso
16. Calculo de los Puntos de Casos de uso no ajustados (UUCP) Factor de Peso de los Actores sin Ajustar (UAW) Factor de Peso de los Casos de Uso sin Ajustar (UUCW)
17. Realizamos el calculo de UUCW Sumando estos valores tenemos: Son los puntos de Casos de Uso sin Ajustar
19. El peso de los factores Técnicos será: Cálculo de los Factores de Ambiente (EF)
20. El resultado de los Factores de Ambiente es: Los puntos de casos de Uso ajustados para este ejemplo son: Considerando la propuesta del creador de esta técnica, asignamos 20 horas-hombre por punto de casos de uso, por lo que la estimación del esfuerzo sería: